/*
 * configs.h
 *
 *  Created on: 2022年2月4日
 *      Author: TamGitsun
 */

#ifndef CONFIGS_H_
#define CONFIGS_H_

// LCD
#if 0
#define APP_IMG_HEIGHT 272
#define APP_IMG_WIDTH  480
#define APP_HSW        41
#define APP_HFP        4
#define APP_HBP        8
#define APP_VSW        10
#define APP_VFP        4
#define APP_VBP        2
#else
#define APP_IMG_HEIGHT 480
#define APP_IMG_WIDTH  800
#define APP_HSW        30
#define APP_HFP        210
#define APP_HBP        30
#define APP_VSW        4
#define APP_VFP        4
#define APP_VBP        4
#endif


#define CONF_LCD_REFRESH_INTERVAL 1000  // 1s
#define CONF_HISTORY_SAVE_INTERVAL 30 * 60  // Half an hour
#define CONF_X_AXIS_TIME_END_OFFSET 300  // 300s

#define CONF_X_AXIS_SCALE_SECTION_N_POINTS 30
#define CONF_X_AXIS_SCALE_STEP (CONF_LCD_REFRESH_INTERVAL * CONF_X_AXIS_SCALE_SECTION_N_POINTS)  // 0.5 Minute
#define CONF_X_AXIS_STEP ((CONF_LCD_REFRESH_INTERVAL / 1000 * CONF_X_AXIS_SCALE_SECTION_N_POINTS) << 2)
#define CONF_X_AXIS_N_SCALES 5  // 5 scales(Except 0 point)
#define CONF_X_AXIS_LABEL_HEIGHT 40
#define CONF_X_AXIS_NAME "Time"
#define CONF_X_AXIS_NAME_WIDTH 50
#define CONF_X_AXIS_0_POINT_OFFSET 10

#define CONF_Y_AXIS_N_SCALES 4  // 4 scales(Except 0 point)
#define CONF_Y_AXIS_LABEL_WIDTH 50
#define CONF_Y_AXIS_NAME "Electricity"
#define CONF_Y_AXIS_NAME_SECONDS CONF_Y_AXIS_NAME "(x100000)"
#define CONF_Y_AXIS_NAME_DAYS CONF_Y_AXIS_NAME "(x100)"
#define CONF_Y_AXIS_NAME_HEIGHT 25
#define CONF_Y_AXIS_0_POINT_OFFSET 10
#define CONF_Y_AXIS_MIN_INITIALIZE_VALUE 0
#define CONF_Y_AXIS_MAX_INITIALIZE_VALUE 100

#define CONF_AXIS_ARROW_HEIGHT 25
#define CONF_AXIS_ARROW_HALF_WIDTH 10


#define CONF_N_DAYS_SIMULATE 256


#endif /* CONFIGS_H_ */
